package com.ccp.dev.system.dao;

import com.ccp.dev.core.basic.base.IBaseMapper;
import com.ccp.dev.system.model.SysTenantResource;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

/**
 * 租户与资源关联dao
 * @author nd
 */
@Mapper
public interface SysTenantResourceDao extends IBaseMapper<SysTenantResource,String> {
    /**
     * 根据租户id 系统id 查找租户资源映射集合
     * @param map tenantId:租户id,systemId:系统id
     * @return 租户资源映射集合
     */
    List<SysTenantResource> queryResourcesByTenantIdAndSystemId(Map map);

    /**
     * 根据租户id 系统id 删除租户与资源映射
     * @param map tenantId:租户id,systemId:系统id
     */
    void delByTenantIdAndSystemId(Map map);

    /**
     * 根据租户id 系统id 资源id 删除租户与资源的映射关系
     * @param tenantIdAndSystemIdAndResourceId 租户id 系统id 资源id map集合
     */
    void delByTenantSystemResource(Map<String,String> tenantIdAndSystemIdAndResourceId);

    /**
     * 根据系统租户id和角色id获取角色资源
     * @param map 参数
     * @return  list
     */
    List<SysTenantResource> queryByTenAndResAndRole(Map map);
}
